Management of data in a computer system, especially in the field of design automation, can be a complex task. Software tools such as text editors, schematic editors, and circuit simulators are employed in the process of designing products with a computer system. To work efficiently, one must not only be knowledgeable on how these software tools operate, but must also be intimately familiar with the operating system of the computer on which the tools involved run. Typically a tool must communicates with several data files in the process of performing its task. Using the commands of the operating system, one collects the relevant files and then applies the tool. The output of the tool is usually several additional data files, each of which has a filename. These additional files are then managed (copied, moved, etc) by typing the filename at an operating system command line that appears on the display terminal. To compound the complexity, multiple versions of the design data are often created by a user as his product design evolves. Each version of the design data produced by a tool may be related to specific versions of data produced by other tools. The user must then somehow keep track of this versioned data to provide for the release of a consistent group of files defining the overall product design. Effective data management thus requires thorough knowledge of the operating system, of the tool, of the files that a tool requires, and of the files that a tool produces.
One attempt to simplify management of such data is suggested by the graphical user interface provided by the Apple Macintosh computer. Each data file is represented by a file icon rather than a textual file name. To manage a file, one simply selects and opens the associated icon. Similar graphical user interfaces include Microsoft Windows, Hewlett-Packard Vue, and Sun Desktop.
Although these interfaces offer some advantage over the prior data management techniques, they have their own drawbacks which make them unsuitable for use with many tools. For example, although the data files are represented graphically, each icon represents only one data file. Opening the icon thus opens only the one associated file. One would still have to keep track of multiple data files in some manner before they could be used with a tool that required or produced such multiple data files. Moreover, none of these interfaces provides for easily tracking and managing multiple versions of design data.